﻿//TIP:先通过Tampermonkey编写为可用脚本，再套用此通用模版，再拖到Chrome安装即可。

/* 通用注入原型4：支持直接将URL注入到原网页*/
function inject(funcOrUrl) {
    var YETAG;
    YETAG = document.createElement('script');
    YETAG.type = 'text/javascript';
    YETAG.id = 'YEJS_' + +new Date();
    if (typeof (funcOrUrl) == 'function') 
    {
        var YEJS = "";
        YEJS += "//================== [YEJS START] =======================";
        YEJS += "\n(";
        YEJS += funcOrUrl;
        YEJS += ")();\n";
        YEJS += "//================== [YEJS ENDED] =======================";
        YETAG.innerHTML = YEJS;
    } 
    else
        YETAG.src = funcOrUrl;
    document.body.appendChild(YETAG);
}

/* 通用注入原型3：*/
switch (window.location.pathname)
{
    case "???":
        inject(YeScript.newFunc);
        break;
}
function inject(func)
{
    if (typeof (func) != 'function')
        return;
    YEJS = "//================== [YEJS START] =======================\n(";
    YEJS += func;
    YEJS += ")();";
    YEJS += "\n//================== [YEJS ENDED] =======================";
    script = document.createElement('script');
    script.type = 'text/javascript';
    script.id = 'YEJS';
    script.innerHTML = YEJS;
    var scriptTag = document.getElementById('YEJS');
    if (scriptTag) document.body.removeChild(scriptTag);
    document.body.appendChild(script);
}

/* 通用注入原型2：*/
var reallyJs = (function YeDoIt()
{
    //通过将实际的待注入网页的脚本写到这里即可。
}.toString());

YEJS = "//================== [YEJS START] =======================\n";
YEJS += reallyJs;
YEJS += "\nYeDoIt();";
YEJS += "\n//================== [YEJS ENDED] =======================";
script = document.createElement('script');
script.id = 'YEJS';
script.type = 'text/javascript';
script.innerHTML = YEJS;
var scriptTag = document.getElementById('YEJS');
if (scriptTag) document.body.removeChild(scriptTag);
document.body.appendChild(script);

/* 通用注入原型1：*/
var YEJS="\
//================== [YEJS START] =======================\n\
将要注入的JS：
1.需要替换所有[双引号]为[单引号] 或\"引号！
2.需要替换所有\n为\\n\\\n
3.不留空行或空行也要用\n\符号代替！
4.将正则表达式中的\d\w等改为\\d\\w才有效！
\n//================== [YEJS ENDED] =======================";

//======================================================
//   直接注入JS到网页中，可自由操纵原网页的任何脚本！
//======================================================
  script = document.createElement('script');
  script.type = 'text/javascript';
  script.id = 'YEJS';
  script.innerHTML = YEJS;
  var scriptTag = document.getElementById('YEJS');
  if (scriptTag) document.body.removeChild(scriptTag);
  document.body.appendChild(script);
//======================================================
//   插件的JS与原网页的JS唯一的交流通道为网页DOM树！
//======================================================